package com.yusheng.tr.common.core.entity.multi;

import com.alibaba.fastjson2.annotation.JSONField;
import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

import java.io.Serializable;
import java.util.Date;

/**
 * <p>
 * 结算单管理表
 * </p>
 *
 * @author author
 * @since 2023-10-07
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("end_of_life_materials")
@Schema(title = "报废物资管理")
public class EndOfLifeMaterialsEntity implements Serializable {

    private static final long serialVersionUID = 1L;


    @TableId(value = "id", type = IdType.ASSIGN_UUID)
    @Schema(name = "主键")
    private String id;

    @TableField("materials_type")
    @Schema(name = "0物资 1电缆")
    private Integer materialsType;


    @TableField("item_group")
    @Schema(name = "物料组/缴料队组")
    private String itemGroup;


    @TableField("code")
    @Schema(name = "物料编号")
    private String code;


    @TableField("car_code")
    @Schema(name = "车号")
    private String carCode;


    @TableField("before_code")
    @Schema(name = "原盘号")
    private String beforeCode;


    @TableField("after_code")
    @Schema(name = "现盘号")
    private String afterCode;


    @TableField("before_length")
    @Schema(name = "原长度")
    private String beforeLength;


    @TableField("after_length")
    @Schema(name = "现长度")
    private String afterLength;


    @TableField("product_specification")
    @Schema(name = "商品名称及规格型号")
    private String productSpecification;


    @TableField("unit_code")
    @Schema(name = "单位")
    private String unitCode;


    @TableField("all_total")
    @Schema(name = "数量")
    private String allTotal;


    @TableField("save_address")
    @Schema(name = "保存地点")
    private String saveAddress;


    @TableField("scrap_people")
    @Schema(name = "缴料人")
    private String scrapPeople;


    @TableField("scrap_reason")
    @Schema(name = "报废原因")
    private String scrapReason;


    @TableField("sys_depart_name")
    @Schema(name = "所属部门")
    private String sysDepartName;


    @TableField("remark")
    @Schema(name = "备注")
    private String remark;


    @TableField(value = "create_by", fill = FieldFill.INSERT)
    @Schema(name = "创建者")
    private String createBy;


    @TableField(value = "update_by", fill = FieldFill.INSERT_UPDATE)
    @Schema(name = "更新者")
    private String updateBy;


    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JSONField(format="yyyy-MM-dd HH:mm:ss")
    @TableField(value = "create_time", fill = FieldFill.INSERT)
    @Schema(name = "创建时间")
    private Date createTime;


    @TableField(value = "update_time", fill = FieldFill.INSERT_UPDATE)
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JSONField(format="yyyy-MM-dd HH:mm:ss")
    @Schema(name = "更新时间")
    private Date updateTime;
}
